// pages/foods/foods.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    list: [],      // 数据列表
    title: '',     // 页面标题
    _page: 1,      // 分页
    _limit: 10,    // 每页数据条数
    id: '',        // 当前页的id
    total:'',      // 数据总条数
    flag:false     // 底部显示信息
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    // console.log(options, 888);
    this.setData({
      id: options.id,         // 获取跳转到该页面的id
      title: options.name     // 获取传过来的页面标题
    })
    // 动态设置当前页面的标题
    wx.setNavigationBarTitle({
      title: this.data.title,
    })
    this.getList()
  },

  // 获取数据列表请求
  getList() {
    wx.showLoading({
      title: '数据加载中...',
    })
    // 节流
    var pullUp = true
    if(!pullUp) return
    pullUp = false
    // 发送请求
    wx.request({
      url: `https://www.escook.cn/categories/${this.data.id}/shops`,
      data: {
        _page: this.data._page, 
        _limit: this.data._limit
      },
      success: (res) => {
        this.setData({
          list: [...this.data.list,...res.data],     // 每次分页发生改变时，将最新的数据和之前的数据进行合并，再渲染到页面
          title: this.data.title,
          total:res.header['X-Total-Count']   // 总条数
        })
        pullUp = true;
        wx.hideLoading()     // 关闭loading
      },
    })
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {
    wx.showLoading({
      title: '数据加载中...',
    })
    this.setData({
      list:[],
      _page:1,
      _limit:10,
      flag:false
    })
    this.getList()
  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {
    this.setData({
      _page: ++this.data._page,
      _limit: this.data._limit
    })
    this.getList()
    // 判断获取的数据是否大于数据总数，如果大于，则 return出去；
    if(this.data._page * this.data._limit >= this.data.total) {
      return this.setData({
        flag:true
      })
    }
  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})